using System.Collections;
using UnityEngine;

public class EOTDCutscene_WalkTown : MonoBehaviour
{
	[SerializeField]
	private int CutsceneIndex;

	[Header("-- Cutscene References --")]
	[SerializeField]
	private CameraManager PlayerCamera;

	[SerializeField]
	private TRIG_LEVELTRANSITION LevelTransition;

	[Header("Characters")]
	[SerializeField]
	private PlayerManager Kris;

	[SerializeField]
	private Susie_Follower Susie;

	[SerializeField]
	private Animator JigsawJoe;

	[SerializeField]
	private SpriteRenderer Tasque;

	[SerializeField]
	private GameObject TasqueManager;

	[SerializeField]
	private Sprite TasqueMoveSprite;

	[SerializeField]
	private SpriteRenderer Rudinn_Dojo;

	[SerializeField]
	private SpriteRenderer Rudinn_Lancer;

	[SerializeField]
	private Animator Lancer;

	[SerializeField]
	private Transform Werewire;

	[SerializeField]
	private Animator Ralsei;

	[SerializeField]
	private SpriteRenderer Cafe;

	[SerializeField]
	private Sprite Cafe_Open;

	[Header("-- Character Move Positions --")]
	[Header("Kris and Susie")]
	[SerializeField]
	private Vector3[] KrisWalkPositions;

	[SerializeField]
	private Vector3[] SusieWalkPositions;

	[SerializeField]
	private int KrisWalkIndex;

	[SerializeField]
	private int TargetKrisWalkIndex;

	[SerializeField]
	private int SusieWalkIndex;

	[SerializeField]
	private int TargetSusieWalkIndex;

	[Header("Jigsaw Joe")]
	[SerializeField]
	private Vector3[] JJWalkPositions;

	[SerializeField]
	private int JJWalkIndex;

	[SerializeField]
	private bool JJHasBegunDelay;

	[Header("Tasque and Tasque Manager")]
	[SerializeField]
	private Vector3[] TasqueWalkPositions;

	[SerializeField]
	private Vector3[] TasqueManagerWalkPositions;

	[SerializeField]
	private int TasqueWalkIndex;

	[SerializeField]
	private int TargetTasqueWalkIndex;

	[SerializeField]
	private int TasqueManagerWalkIndex;

	[SerializeField]
	private int TargetTasqueManagerWalkIndex;

	[Header("Rudinn")]
	[SerializeField]
	private Vector3 RudinnWalkPositions;

	[Header("-- Cutscene Chats --")]
	[SerializeField]
	private INT_Chat CutsceneChatter;

	[SerializeField]
	private CHATBOXTEXT[] CutsceneChats;

	[Header("-- Cutscene Audio --")]
	[SerializeField]
	private AudioSource CutsceneSource;

	[SerializeField]
	private AudioClip[] CutsceneSounds;

	[SerializeField]
	private AudioClip MusicCastleTown;

	[SerializeField]
	private AudioClip MusicLancer;

	private void Start()
	{
		//IL_0064: Unknown result type (might be due to invalid IL or missing references)
		//IL_0069: Unknown result type (might be due to invalid IL or missing references)
		//IL_006e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0078: Unknown result type (might be due to invalid IL or missing references)
		//IL_007d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0082: Unknown result type (might be due to invalid IL or missing references)
		Kris = PlayerManager.Instance;
		Susie = PartyMemberSystem.Instance.HasMemberInParty(PartyMemberSystem.Instance.Default_SusieDarkworld).PartyMemberFollowSettings;
		if ((Object)(object)Susie == (Object)null)
		{
			MonoBehaviour.print((object)"Susie Missing?");
		}
		Susie.FollowingEnabled = false;
		((Component)Susie).transform.position = Vector2.op_Implicit(Vector2.op_Implicit(((Component)Kris).transform.position) + Vector2.down * 2.5f);
		CutsceneIndex = 1;
		MusicManager.PlaySong(MusicCastleTown, FadePreviousSong: true, 1f);
	}

	private void Update()
	{
		if (CutsceneIndex != 0)
		{
			CutsceneUpdate();
			Kris._PlayerState = PlayerManager.PlayerState.Cutscene;
			DarkworldMenu.Instance.CanOpenMenu = false;
		}
	}

	private void CutsceneUpdate()
	{
		//IL_036e: Unknown result type (might be due to invalid IL or missing references)
		//IL_03eb: Unknown result type (might be due to invalid IL or missing references)
		//IL_0407: Unknown result type (might be due to invalid IL or missing references)
		//IL_0426: Unknown result type (might be due to invalid IL or missing references)
		//IL_042b: Unknown result type (might be due to invalid IL or missing references)
		//IL_05a7: Unknown result type (might be due to invalid IL or missing references)
		//IL_05bc: Unknown result type (might be due to invalid IL or missing references)
		//IL_05db: Unknown result type (might be due to invalid IL or missing references)
		//IL_05e0: Unknown result type (might be due to invalid IL or missing references)
		//IL_08c3: Unknown result type (might be due to invalid IL or missing references)
		//IL_0940: Unknown result type (might be due to invalid IL or missing references)
		//IL_095c: Unknown result type (might be due to invalid IL or missing references)
		//IL_097b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0980: Unknown result type (might be due to invalid IL or missing references)
		//IL_0a4f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0acc: Unknown result type (might be due to invalid IL or missing references)
		//IL_0b0f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0b14: Unknown result type (might be due to invalid IL or missing references)
		//IL_0e31: Unknown result type (might be due to invalid IL or missing references)
		//IL_0e46: Unknown result type (might be due to invalid IL or missing references)
		//IL_0e65: Unknown result type (might be due to invalid IL or missing references)
		//IL_0e6a: Unknown result type (might be due to invalid IL or missing references)
		//IL_1354: Unknown result type (might be due to invalid IL or missing references)
		//IL_135a: Unknown result type (might be due to invalid IL or missing references)
		//IL_1762: Unknown result type (might be due to invalid IL or missing references)
		//IL_179f: Unknown result type (might be due to invalid IL or missing references)
		//IL_17a4: Unknown result type (might be due to invalid IL or missing references)
		//IL_0092: Unknown result type (might be due to invalid IL or missing references)
		//IL_00a3: Unknown result type (might be due to invalid IL or missing references)
		//IL_0449: Unknown result type (might be due to invalid IL or missing references)
		//IL_044e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0453: Unknown result type (might be due to invalid IL or missing references)
		//IL_0454: Unknown result type (might be due to invalid IL or missing references)
		//IL_0464: Unknown result type (might be due to invalid IL or missing references)
		//IL_0469: Unknown result type (might be due to invalid IL or missing references)
		//IL_04b7: Unknown result type (might be due to invalid IL or missing references)
		//IL_04c8: Unknown result type (might be due to invalid IL or missing references)
		//IL_05fe: Unknown result type (might be due to invalid IL or missing references)
		//IL_0603: Unknown result type (might be due to invalid IL or missing references)
		//IL_0608: Unknown result type (might be due to invalid IL or missing references)
		//IL_0609: Unknown result type (might be due to invalid IL or missing references)
		//IL_0619: Unknown result type (might be due to invalid IL or missing references)
		//IL_061e: Unknown result type (might be due to invalid IL or missing references)
		//IL_099e: Unknown result type (might be due to invalid IL or missing references)
		//IL_09a3: Unknown result type (might be due to invalid IL or missing references)
		//IL_09a8: Unknown result type (might be due to invalid IL or missing references)
		//IL_09a9: Unknown result type (might be due to invalid IL or missing references)
		//IL_09b9: Unknown result type (might be due to invalid IL or missing references)
		//IL_09be: Unknown result type (might be due to invalid IL or missing references)
		//IL_0b32: Unknown result type (might be due to invalid IL or missing references)
		//IL_0b37: Unknown result type (might be due to invalid IL or missing references)
		//IL_0b43: Unknown result type (might be due to invalid IL or missing references)
		//IL_0b7e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0b8f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0e89: Unknown result type (might be due to invalid IL or missing references)
		//IL_0e8e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0e9b: Unknown result type (might be due to invalid IL or missing references)
		//IL_1017: Unknown result type (might be due to invalid IL or missing references)
		//IL_104c: Unknown result type (might be due to invalid IL or missing references)
		//IL_0ef9: Unknown result type (might be due to invalid IL or missing references)
		//IL_0f0a: Unknown result type (might be due to invalid IL or missing references)
		//IL_12e4: Unknown result type (might be due to invalid IL or missing references)
		//IL_1192: Unknown result type (might be due to invalid IL or missing references)
		//IL_11a3: Unknown result type (might be due to invalid IL or missing references)
		//IL_137c: Unknown result type (might be due to invalid IL or missing references)
		//IL_1382: Unknown result type (might be due to invalid IL or missing references)
		//IL_1392: Unknown result type (might be due to invalid IL or missing references)
		//IL_16c6: Unknown result type (might be due to invalid IL or missing references)
		//IL_16d7: Unknown result type (might be due to invalid IL or missing references)
		//IL_15bc: Unknown result type (might be due to invalid IL or missing references)
		//IL_15cd: Unknown result type (might be due to invalid IL or missing references)
		//IL_17ea: Unknown result type (might be due to invalid IL or missing references)
		//IL_17fe: Unknown result type (might be due to invalid IL or missing references)
		//IL_17c3: Unknown result type (might be due to invalid IL or missing references)
		//IL_17c8: Unknown result type (might be due to invalid IL or missing references)
		//IL_17d5: Unknown result type (might be due to invalid IL or missing references)
		//IL_1bac: Unknown result type (might be due to invalid IL or missing references)
		//IL_1bc0: Unknown result type (might be due to invalid IL or missing references)
		//IL_00c8: Unknown result type (might be due to invalid IL or missing references)
		//IL_00cd: Unknown result type (might be due to invalid IL or missing references)
		//IL_00de: Unknown result type (might be due to invalid IL or missing references)
		//IL_00e3: Unknown result type (might be due to invalid IL or missing references)
		//IL_00f3: Unknown result type (might be due to invalid IL or missing references)
		//IL_00f8: Unknown result type (might be due to invalid IL or missing references)
		//IL_04ea: Unknown result type (might be due to invalid IL or missing references)
		//IL_04fb: Unknown result type (might be due to invalid IL or missing references)
		//IL_050b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0658: Unknown result type (might be due to invalid IL or missing references)
		//IL_0669: Unknown result type (might be due to invalid IL or missing references)
		//IL_0bb1: Unknown result type (might be due to invalid IL or missing references)
		//IL_0bb6: Unknown result type (might be due to invalid IL or missing references)
		//IL_0bc7: Unknown result type (might be due to invalid IL or missing references)
		//IL_0bcc: Unknown result type (might be due to invalid IL or missing references)
		//IL_0bdc: Unknown result type (might be due to invalid IL or missing references)
		//IL_0be1: Unknown result type (might be due to invalid IL or missing references)
		//IL_0d95: Unknown result type (might be due to invalid IL or missing references)
		//IL_0da6: Unknown result type (might be due to invalid IL or missing references)
		//IL_0ce8: Unknown result type (might be due to invalid IL or missing references)
		//IL_0cf9: Unknown result type (might be due to invalid IL or missing references)
		//IL_0f2f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0f34: Unknown result type (might be due to invalid IL or missing references)
		//IL_0f45: Unknown result type (might be due to invalid IL or missing references)
		//IL_0f4a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0f5a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0f5f: Unknown result type (might be due to invalid IL or missing references)
		//IL_130f: Unknown result type (might be due to invalid IL or missing references)
		//IL_131a: Unknown result type (might be due to invalid IL or missing references)
		//IL_131f: Unknown result type (might be due to invalid IL or missing references)
		//IL_1329: Unknown result type (might be due to invalid IL or missing references)
		//IL_132e: Unknown result type (might be due to invalid IL or missing references)
		//IL_133e: Unknown result type (might be due to invalid IL or missing references)
		//IL_11c8: Unknown result type (might be due to invalid IL or missing references)
		//IL_11cd: Unknown result type (might be due to invalid IL or missing references)
		//IL_11de: Unknown result type (might be due to invalid IL or missing references)
		//IL_11e3: Unknown result type (might be due to invalid IL or missing references)
		//IL_11f3: Unknown result type (might be due to invalid IL or missing references)
		//IL_11f8: Unknown result type (might be due to invalid IL or missing references)
		//IL_1702: Unknown result type (might be due to invalid IL or missing references)
		//IL_170d: Unknown result type (might be due to invalid IL or missing references)
		//IL_1712: Unknown result type (might be due to invalid IL or missing references)
		//IL_171c: Unknown result type (might be due to invalid IL or missing references)
		//IL_1721: Unknown result type (might be due to invalid IL or missing references)
		//IL_1731: Unknown result type (might be due to invalid IL or missing references)
		//IL_15f2: Unknown result type (might be due to invalid IL or missing references)
		//IL_15f7: Unknown result type (might be due to invalid IL or missing references)
		//IL_1608: Unknown result type (might be due to invalid IL or missing references)
		//IL_160d: Unknown result type (might be due to invalid IL or missing references)
		//IL_161d: Unknown result type (might be due to invalid IL or missing references)
		//IL_1622: Unknown result type (might be due to invalid IL or missing references)
		//IL_1823: Unknown result type (might be due to invalid IL or missing references)
		//IL_1837: Unknown result type (might be due to invalid IL or missing references)
		//IL_1847: Unknown result type (might be due to invalid IL or missing references)
		//IL_1be5: Unknown result type (might be due to invalid IL or missing references)
		//IL_1bf9: Unknown result type (might be due to invalid IL or missing references)
		//IL_1c09: Unknown result type (might be due to invalid IL or missing references)
		//IL_02cf: Unknown result type (might be due to invalid IL or missing references)
		//IL_02e4: Unknown result type (might be due to invalid IL or missing references)
		//IL_01d5: Unknown result type (might be due to invalid IL or missing references)
		//IL_01e6: Unknown result type (might be due to invalid IL or missing references)
		//IL_0575: Unknown result type (might be due to invalid IL or missing references)
		//IL_058f: Unknown result type (might be due to invalid IL or missing references)
		//IL_068e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0693: Unknown result type (might be due to invalid IL or missing references)
		//IL_06a4: Unknown result type (might be due to invalid IL or missing references)
		//IL_06a9: Unknown result type (might be due to invalid IL or missing references)
		//IL_06b9: Unknown result type (might be due to invalid IL or missing references)
		//IL_06be: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c38: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c49: Unknown result type (might be due to invalid IL or missing references)
		//IL_0dc8: Unknown result type (might be due to invalid IL or missing references)
		//IL_0dcd: Unknown result type (might be due to invalid IL or missing references)
		//IL_0dde: Unknown result type (might be due to invalid IL or missing references)
		//IL_0de3: Unknown result type (might be due to invalid IL or missing references)
		//IL_0df3: Unknown result type (might be due to invalid IL or missing references)
		//IL_0df8: Unknown result type (might be due to invalid IL or missing references)
		//IL_0d1b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0d20: Unknown result type (might be due to invalid IL or missing references)
		//IL_0d31: Unknown result type (might be due to invalid IL or missing references)
		//IL_0d36: Unknown result type (might be due to invalid IL or missing references)
		//IL_0d46: Unknown result type (might be due to invalid IL or missing references)
		//IL_0d4b: Unknown result type (might be due to invalid IL or missing references)
		//IL_1087: Unknown result type (might be due to invalid IL or missing references)
		//IL_1098: Unknown result type (might be due to invalid IL or missing references)
		//IL_1534: Unknown result type (might be due to invalid IL or missing references)
		//IL_13e2: Unknown result type (might be due to invalid IL or missing references)
		//IL_13f3: Unknown result type (might be due to invalid IL or missing references)
		//IL_18fc: Unknown result type (might be due to invalid IL or missing references)
		//IL_1908: Unknown result type (might be due to invalid IL or missing references)
		//IL_1cbe: Unknown result type (might be due to invalid IL or missing references)
		//IL_1cca: Unknown result type (might be due to invalid IL or missing references)
		//IL_020b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0210: Unknown result type (might be due to invalid IL or missing references)
		//IL_0221: Unknown result type (might be due to invalid IL or missing references)
		//IL_0226: Unknown result type (might be due to invalid IL or missing references)
		//IL_0236: Unknown result type (might be due to invalid IL or missing references)
		//IL_023b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0766: Unknown result type (might be due to invalid IL or missing references)
		//IL_0777: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c6b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c70: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c81: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c86: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c96: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c9b: Unknown result type (might be due to invalid IL or missing references)
		//IL_10bd: Unknown result type (might be due to invalid IL or missing references)
		//IL_10c2: Unknown result type (might be due to invalid IL or missing references)
		//IL_10d3: Unknown result type (might be due to invalid IL or missing references)
		//IL_10d8: Unknown result type (might be due to invalid IL or missing references)
		//IL_10e8: Unknown result type (might be due to invalid IL or missing references)
		//IL_10ed: Unknown result type (might be due to invalid IL or missing references)
		//IL_155f: Unknown result type (might be due to invalid IL or missing references)
		//IL_156a: Unknown result type (might be due to invalid IL or missing references)
		//IL_156f: Unknown result type (might be due to invalid IL or missing references)
		//IL_1579: Unknown result type (might be due to invalid IL or missing references)
		//IL_157e: Unknown result type (might be due to invalid IL or missing references)
		//IL_158e: Unknown result type (might be due to invalid IL or missing references)
		//IL_1418: Unknown result type (might be due to invalid IL or missing references)
		//IL_141d: Unknown result type (might be due to invalid IL or missing references)
		//IL_142e: Unknown result type (might be due to invalid IL or missing references)
		//IL_1433: Unknown result type (might be due to invalid IL or missing references)
		//IL_1443: Unknown result type (might be due to invalid IL or missing references)
		//IL_1448: Unknown result type (might be due to invalid IL or missing references)
		//IL_19dc: Unknown result type (might be due to invalid IL or missing references)
		//IL_19e8: Unknown result type (might be due to invalid IL or missing references)
		//IL_192d: Unknown result type (might be due to invalid IL or missing references)
		//IL_1932: Unknown result type (might be due to invalid IL or missing references)
		//IL_193e: Unknown result type (might be due to invalid IL or missing references)
		//IL_1943: Unknown result type (might be due to invalid IL or missing references)
		//IL_1953: Unknown result type (might be due to invalid IL or missing references)
		//IL_1958: Unknown result type (might be due to invalid IL or missing references)
		//IL_1d9e: Unknown result type (might be due to invalid IL or missing references)
		//IL_1daa: Unknown result type (might be due to invalid IL or missing references)
		//IL_1cef: Unknown result type (might be due to invalid IL or missing references)
		//IL_1cf4: Unknown result type (might be due to invalid IL or missing references)
		//IL_1d00: Unknown result type (might be due to invalid IL or missing references)
		//IL_1d05: Unknown result type (might be due to invalid IL or missing references)
		//IL_1d15: Unknown result type (might be due to invalid IL or missing references)
		//IL_1d1a: Unknown result type (might be due to invalid IL or missing references)
		//IL_079c: Unknown result type (might be due to invalid IL or missing references)
		//IL_07a1: Unknown result type (might be due to invalid IL or missing references)
		//IL_07b2: Unknown result type (might be due to invalid IL or missing references)
		//IL_07b7: Unknown result type (might be due to invalid IL or missing references)
		//IL_07c7: Unknown result type (might be due to invalid IL or missing references)
		//IL_07cc: Unknown result type (might be due to invalid IL or missing references)
		//IL_1ad6: Unknown result type (might be due to invalid IL or missing references)
		//IL_1ae2: Unknown result type (might be due to invalid IL or missing references)
		//IL_1a0d: Unknown result type (might be due to invalid IL or missing references)
		//IL_1a12: Unknown result type (might be due to invalid IL or missing references)
		//IL_1a1e: Unknown result type (might be due to invalid IL or missing references)
		//IL_1a23: Unknown result type (might be due to invalid IL or missing references)
		//IL_1a33: Unknown result type (might be due to invalid IL or missing references)
		//IL_1a38: Unknown result type (might be due to invalid IL or missing references)
		//IL_1ac1: Unknown result type (might be due to invalid IL or missing references)
		//IL_1dcf: Unknown result type (might be due to invalid IL or missing references)
		//IL_1dd4: Unknown result type (might be due to invalid IL or missing references)
		//IL_1de0: Unknown result type (might be due to invalid IL or missing references)
		//IL_1de5: Unknown result type (might be due to invalid IL or missing references)
		//IL_1df5: Unknown result type (might be due to invalid IL or missing references)
		//IL_1dfa: Unknown result type (might be due to invalid IL or missing references)
		//IL_1e83: Unknown result type (might be due to invalid IL or missing references)
		//IL_1afc: Unknown result type (might be due to invalid IL or missing references)
		//IL_1b08: Unknown result type (might be due to invalid IL or missing references)
		//IL_1b22: Unknown result type (might be due to invalid IL or missing references)
		//IL_1b36: Unknown result type (might be due to invalid IL or missing references)
		//IL_1b50: Unknown result type (might be due to invalid IL or missing references)
		//IL_1b55: Unknown result type (might be due to invalid IL or missing references)
		switch (CutsceneIndex)
		{
		case 1:
			if (KrisWalkIndex < TargetKrisWalkIndex)
			{
				if (((Component)Kris).transform.position != KrisWalkPositions[KrisWalkIndex])
				{
					((Component)Kris).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Kris).transform.position), Vector2.op_Implicit(KrisWalkPositions[KrisWalkIndex]), 3f * Time.deltaTime));
					Kris._PMove.AnimationOverriden = true;
					Kris._PMove._anim.SetBool("MOVING", true);
					Kris._PMove._anim.SetFloat("MOVEMENTX", 0f);
					Kris._PMove._anim.SetFloat("MOVEMENTY", 1f);
				}
				else
				{
					KrisWalkIndex++;
				}
			}
			else
			{
				IncrementCutsceneIndex();
				MusicManager.PauseMusic();
				((Component)JigsawJoe).gameObject.SetActive(true);
				Rudinn_Dojo.flipX = false;
				CutsceneSource.PlayOneShot(CutsceneSounds[0]);
			}
			if (SusieWalkIndex < TargetSusieWalkIndex)
			{
				if (((Component)Susie).transform.position != SusieWalkPositions[SusieWalkIndex])
				{
					((Component)Susie).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Susie).transform.position), Vector2.op_Implicit(SusieWalkPositions[SusieWalkIndex]), 3.1f * Time.deltaTime));
					Susie.AnimationOverriden = true;
					Susie.SusieAnimator.Play("Walk");
					Susie.SusieAnimator.SetFloat("VelocityX", 0f);
					Susie.SusieAnimator.SetFloat("VelocityY", 1f);
					Susie.SusieAnimator.SetFloat("VelocityMagnitude", 1f);
				}
				else
				{
					SusieWalkIndex++;
				}
			}
			if (((Component)Kris).transform.position.y > ((Component)PlayerCamera).transform.position.y)
			{
				PlayerCamera.FollowPlayerY = true;
			}
			break;
		case 2:
		{
			Kris._PMove._anim.SetBool("MOVING", false);
			Kris._PMove._anim.SetFloat("MOVEMENTX", 0f);
			Kris._PMove._anim.SetFloat("MOVEMENTY", 0f);
			Kris._PMove.RotatePlayerAnim(new Vector2(-1f, 0f));
			Susie.SusieAnimator.Play("Idle");
			Susie.SusieAnimator.SetFloat("VelocityX", 0f);
			Susie.SusieAnimator.SetFloat("VelocityY", 0f);
			Susie.SusieAnimator.SetFloat("VelocityMagnitude", 0f);
			Susie.RotateSusieToDirection(new Vector2(-1f, 0f));
			Vector3 val3 = default(Vector3);
			((Vector3)(ref val3))._002Ector(-4f, ((Component)PlayerCamera).transform.position.y, -10f);
			if (((Component)PlayerCamera).transform.position != val3)
			{
				((Component)PlayerCamera).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)PlayerCamera).transform.position), Vector2.op_Implicit(val3), 4f * Time.deltaTime));
				break;
			}
			IncrementCutsceneIndex();
			RunFreshChat(CutsceneChats[0], 0, ForcePosition: false, OnBottom: false);
			break;
		}
		case 4:
			JigsawJoe.Play("JJ_Dissapointed");
			if (JJWalkIndex < JJWalkPositions.Length)
			{
				if (((Component)JigsawJoe).transform.position != JJWalkPositions[JJWalkIndex])
				{
					((Component)JigsawJoe).transform.position = Vector3.MoveTowards(((Component)JigsawJoe).transform.position, JJWalkPositions[JJWalkIndex], 8f * Time.deltaTime);
				}
				else
				{
					JJWalkIndex++;
				}
			}
			if (!JJHasBegunDelay)
			{
				JJHasBegunDelay = true;
				CutsceneSource.PlayOneShot(CutsceneSounds[3]);
				((MonoBehaviour)this).StartCoroutine(JJWalkDelay());
			}
			if (JJWalkIndex == 2)
			{
				Kris._PMove.RotatePlayerAnim(new Vector2(0f, -1f));
				Susie.RotateSusieToDirection(new Vector2(0f, -1f));
			}
			break;
		case 6:
		{
			Vector3 val4 = default(Vector3);
			((Vector3)(ref val4))._002Ector(((Component)Kris).transform.position.x, ((Component)PlayerCamera).transform.position.y, -10f);
			if (((Component)PlayerCamera).transform.position != val4)
			{
				((Component)PlayerCamera).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)PlayerCamera).transform.position), Vector2.op_Implicit(val4), 4f * Time.deltaTime));
				break;
			}
			MusicManager.ResumeMusic();
			TargetKrisWalkIndex = 2;
			TargetSusieWalkIndex = 2;
			if (KrisWalkIndex < TargetKrisWalkIndex)
			{
				if (((Component)Kris).transform.position != KrisWalkPositions[KrisWalkIndex])
				{
					((Component)Kris).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Kris).transform.position), Vector2.op_Implicit(KrisWalkPositions[KrisWalkIndex]), 3f * Time.deltaTime));
					Kris._PMove.AnimationOverriden = true;
					Kris._PMove._anim.SetBool("MOVING", true);
					Kris._PMove._anim.SetFloat("MOVEMENTX", 0f);
					Kris._PMove._anim.SetFloat("MOVEMENTY", 1f);
				}
				else
				{
					KrisWalkIndex++;
				}
			}
			else
			{
				IncrementCutsceneIndex();
			}
			if (SusieWalkIndex < TargetSusieWalkIndex)
			{
				if (((Component)Susie).transform.position != SusieWalkPositions[SusieWalkIndex])
				{
					((Component)Susie).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Susie).transform.position), Vector2.op_Implicit(SusieWalkPositions[SusieWalkIndex]), 3.1f * Time.deltaTime));
					Susie.AnimationOverriden = true;
					Susie.SusieAnimator.Play("Walk");
					Susie.SusieAnimator.SetFloat("VelocityX", 0f);
					Susie.SusieAnimator.SetFloat("VelocityY", 1f);
					Susie.SusieAnimator.SetFloat("VelocityMagnitude", 1f);
				}
				else
				{
					SusieWalkIndex++;
				}
			}
			break;
		}
		case 7:
		{
			Kris._PMove._anim.SetBool("MOVING", false);
			Kris._PMove._anim.SetFloat("MOVEMENTX", 0f);
			Kris._PMove._anim.SetFloat("MOVEMENTY", 0f);
			Kris._PMove.RotatePlayerAnim(new Vector2(1f, 0f));
			Susie.SusieAnimator.Play("Idle");
			Susie.SusieAnimator.SetFloat("VelocityX", 0f);
			Susie.SusieAnimator.SetFloat("VelocityY", 0f);
			Susie.SusieAnimator.SetFloat("VelocityMagnitude", 0f);
			Susie.RotateSusieToDirection(new Vector2(1f, 0f));
			Vector3 val6 = default(Vector3);
			((Vector3)(ref val6))._002Ector(2f, ((Component)PlayerCamera).transform.position.y, -10f);
			if (((Component)PlayerCamera).transform.position != val6)
			{
				((Component)PlayerCamera).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)PlayerCamera).transform.position), Vector2.op_Implicit(val6), 4f * Time.deltaTime));
				break;
			}
			IncrementCutsceneIndex();
			RunFreshChat(CutsceneChats[1], 0, ForcePosition: false, OnBottom: false);
			break;
		}
		case 9:
		{
			Kris._PMove._anim.SetBool("MOVING", false);
			Kris._PMove._anim.SetFloat("MOVEMENTX", 0f);
			Kris._PMove._anim.SetFloat("MOVEMENTY", 0f);
			Kris._PMove.RotatePlayerAnim(new Vector2(1f, 0f));
			Susie.SusieAnimator.Play("Idle");
			Susie.SusieAnimator.SetFloat("VelocityX", 0f);
			Susie.SusieAnimator.SetFloat("VelocityY", 0f);
			Susie.SusieAnimator.SetFloat("VelocityMagnitude", 0f);
			Susie.RotateSusieToDirection(new Vector2(1f, 0f));
			PlayerCamera.FollowPlayerY = false;
			PlayerCamera.FollowPlayerX = false;
			Vector3 val = default(Vector3);
			((Vector3)(ref val))._002Ector(2f, 18f, -10f);
			if (((Component)PlayerCamera).transform.position != val)
			{
				((Component)PlayerCamera).transform.position = Vector3.MoveTowards(((Component)PlayerCamera).transform.position, val, 4f * Time.deltaTime);
				break;
			}
			IncrementCutsceneIndex();
			((MonoBehaviour)this).StartCoroutine(TasqueCutscene());
			break;
		}
		case 11:
			if (TasqueWalkIndex < TargetTasqueWalkIndex)
			{
				if (((Component)Tasque).transform.position != TasqueWalkPositions[TasqueWalkIndex])
				{
					((Component)Tasque).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Tasque).transform.position), Vector2.op_Implicit(TasqueWalkPositions[TasqueWalkIndex]), 10f * Time.deltaTime));
					Tasque.sprite = TasqueMoveSprite;
				}
				else
				{
					TasqueWalkIndex++;
				}
			}
			if (TasqueManager.activeSelf && TasqueManagerWalkIndex < TargetTasqueManagerWalkIndex)
			{
				if (TasqueManager.transform.position != TasqueManagerWalkPositions[TasqueManagerWalkIndex])
				{
					TasqueManager.transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(TasqueManager.transform.position), Vector2.op_Implicit(TasqueManagerWalkPositions[TasqueManagerWalkIndex]), 8f * Time.deltaTime));
				}
				else
				{
					TasqueManagerWalkIndex++;
				}
			}
			break;
		case 12:
			TargetTasqueManagerWalkIndex = 2;
			if (TasqueManager.activeSelf)
			{
				if (TasqueManagerWalkIndex < TargetTasqueManagerWalkIndex)
				{
					if (TasqueManager.transform.position != TasqueManagerWalkPositions[TasqueManagerWalkIndex])
					{
						TasqueManager.transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(TasqueManager.transform.position), Vector2.op_Implicit(TasqueManagerWalkPositions[TasqueManagerWalkIndex]), 10f * Time.deltaTime));
					}
					else
					{
						TasqueManagerWalkIndex++;
					}
				}
				else
				{
					IncrementCutsceneIndex();
					TasqueManager.SetActive(false);
				}
			}
			if (TasqueWalkIndex < TargetTasqueWalkIndex)
			{
				if (((Component)Tasque).transform.position != TasqueWalkPositions[TasqueWalkIndex])
				{
					((Component)Tasque).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Tasque).transform.position), Vector2.op_Implicit(TasqueWalkPositions[TasqueWalkIndex]), 8f * Time.deltaTime));
				}
				else
				{
					TasqueWalkIndex++;
				}
			}
			else
			{
				((Component)Tasque).gameObject.SetActive(false);
			}
			break;
		case 13:
		{
			Vector3 val2 = default(Vector3);
			((Vector3)(ref val2))._002Ector(((Component)Kris).transform.position.x, ((Component)Kris).transform.position.y, -10f);
			if (((Component)PlayerCamera).transform.position != val2)
			{
				((Component)PlayerCamera).transform.position = Vector3.MoveTowards(((Component)PlayerCamera).transform.position, val2, 6f * Time.deltaTime);
				break;
			}
			PlayerCamera.FollowPlayerY = true;
			RunFreshChat(CutsceneChats[3], 0, ForcePosition: false, OnBottom: false);
			IncrementCutsceneIndex();
			break;
		}
		case 15:
			TargetKrisWalkIndex = 4;
			TargetSusieWalkIndex = 4;
			MusicManager.ResumeMusic();
			if (KrisWalkIndex < TargetKrisWalkIndex)
			{
				if (((Component)Kris).transform.position != KrisWalkPositions[KrisWalkIndex])
				{
					((Component)Kris).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Kris).transform.position), Vector2.op_Implicit(KrisWalkPositions[KrisWalkIndex]), 3f * Time.deltaTime));
					Kris._PMove.AnimationOverriden = true;
					Kris._PMove._anim.SetBool("MOVING", true);
					Kris._PMove._anim.SetFloat("MOVEMENTX", 0f);
					Kris._PMove._anim.SetFloat("MOVEMENTY", 1f);
				}
				else
				{
					KrisWalkIndex++;
				}
			}
			else
			{
				IncrementCutsceneIndex();
				RunFreshChat(CutsceneChats[4], 0, ForcePosition: true, OnBottom: true);
				Kris._PMove.RotatePlayerAnim(new Vector2(0f, 1f));
				Kris._PMove._anim.SetBool("MOVING", false);
				Susie.RotateSusieToDirection(new Vector2(0f, 1f));
				Susie.SusieAnimator.Play("Idle");
			}
			if (SusieWalkIndex < TargetSusieWalkIndex)
			{
				if (((Component)Susie).transform.position != SusieWalkPositions[SusieWalkIndex])
				{
					((Component)Susie).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Susie).transform.position), Vector2.op_Implicit(SusieWalkPositions[SusieWalkIndex]), 3.1f * Time.deltaTime));
					Susie.AnimationOverriden = true;
					Susie.SusieAnimator.Play("Walk");
					Susie.SusieAnimator.SetFloat("VelocityX", 0f);
					Susie.SusieAnimator.SetFloat("VelocityY", 1f);
					Susie.SusieAnimator.SetFloat("VelocityMagnitude", 1f);
				}
				else
				{
					SusieWalkIndex++;
				}
			}
			break;
		case 16:
			if (SusieWalkIndex < TargetSusieWalkIndex)
			{
				if (((Component)Susie).transform.position != SusieWalkPositions[SusieWalkIndex])
				{
					((Component)Susie).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Susie).transform.position), Vector2.op_Implicit(SusieWalkPositions[SusieWalkIndex]), 3.1f * Time.deltaTime));
					Susie.AnimationOverriden = true;
					Susie.SusieAnimator.Play("Walk");
					Susie.SusieAnimator.SetFloat("VelocityX", 0f);
					Susie.SusieAnimator.SetFloat("VelocityY", 1f);
					Susie.SusieAnimator.SetFloat("VelocityMagnitude", 1f);
				}
				else
				{
					SusieWalkIndex++;
				}
			}
			else
			{
				Susie.SusieAnimator.SetFloat("VelocityX", 0f);
				Susie.SusieAnimator.SetFloat("VelocityY", 0f);
				Susie.SusieAnimator.SetFloat("VelocityMagnitude", 0f);
				Susie.RotateSusieToDirection(new Vector2(0f, 1f));
				Susie.SusieAnimator.Play("Idle");
			}
			Werewire.position = Vector3.MoveTowards(Werewire.position, Werewire.position + Vector3.down * 40f, 10f * Time.deltaTime);
			break;
		case 17:
			if (((Component)Rudinn_Lancer).transform.position != RudinnWalkPositions)
			{
				((Component)Rudinn_Lancer).transform.position = Vector3.MoveTowards(((Component)Rudinn_Lancer).transform.position, RudinnWalkPositions, 4f * Time.deltaTime);
			}
			else
			{
				IncrementCutsceneIndex();
				((Component)Rudinn_Lancer).gameObject.SetActive(false);
				RunFreshChat(CutsceneChats[5], 0, ForcePosition: true, OnBottom: true);
			}
			if (SusieWalkIndex < TargetSusieWalkIndex)
			{
				if (((Component)Susie).transform.position != SusieWalkPositions[SusieWalkIndex])
				{
					((Component)Susie).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Susie).transform.position), Vector2.op_Implicit(SusieWalkPositions[SusieWalkIndex]), 3.1f * Time.deltaTime));
					Susie.AnimationOverriden = true;
					Susie.SusieAnimator.Play("Walk");
					Susie.SusieAnimator.SetFloat("VelocityX", 0f);
					Susie.SusieAnimator.SetFloat("VelocityY", 1f);
					Susie.SusieAnimator.SetFloat("VelocityMagnitude", 1f);
				}
				else
				{
					SusieWalkIndex++;
				}
			}
			else
			{
				Susie.SusieAnimator.SetFloat("VelocityX", 0f);
				Susie.SusieAnimator.SetFloat("VelocityY", 0f);
				Susie.SusieAnimator.SetFloat("VelocityMagnitude", 0f);
				Susie.RotateSusieToDirection(new Vector2(0f, 1f));
				Susie.SusieAnimator.Play("Idle");
			}
			Werewire.position = Vector3.MoveTowards(Werewire.position, Werewire.position + Vector3.down * 40f, 10f * Time.deltaTime);
			break;
		case 19:
			TargetSusieWalkIndex = 5;
			if (SusieWalkIndex < TargetSusieWalkIndex)
			{
				if (((Component)Susie).transform.position != SusieWalkPositions[SusieWalkIndex])
				{
					((Component)Susie).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Susie).transform.position), Vector2.op_Implicit(SusieWalkPositions[SusieWalkIndex]), 6f * Time.deltaTime));
					Susie.AnimationOverriden = true;
					Susie.SusieAnimator.Play("Idle");
					Susie.SusieAnimator.SetFloat("VelocityX", -1f);
					Susie.SusieAnimator.SetFloat("VelocityY", 0f);
					Susie.SusieAnimator.SetFloat("VelocityMagnitude", 0f);
					Lancer.Play("Lancer_Idle_Right");
				}
				else
				{
					SusieWalkIndex++;
				}
			}
			if (((Component)Susie).transform.position == SusieWalkPositions[SusieWalkIndex])
			{
				IncrementCutsceneIndex();
				((MonoBehaviour)this).StartCoroutine(LancerSusieHighFive());
			}
			Werewire.position = Vector3.MoveTowards(Werewire.position, Werewire.position + Vector3.down * 40f, 10f * Time.deltaTime);
			break;
		case 21:
			IncrementCutsceneIndex();
			((MonoBehaviour)this).StartCoroutine(RalseiChatDelay());
			break;
		case 23:
		{
			Vector3 val5 = default(Vector3);
			((Vector3)(ref val5))._002Ector(0f, ((Component)Kris).transform.position.y + 4f, -10f);
			PlayerCamera.FollowPlayerY = false;
			PlayerCamera.FollowPlayerX = false;
			if (((Component)PlayerCamera).transform.position != val5)
			{
				((Component)PlayerCamera).transform.position = Vector3.MoveTowards(((Component)PlayerCamera).transform.position, val5, 4f * Time.deltaTime);
			}
			if (((Component)Ralsei).transform.position != new Vector3(0f, 26.65f, 0f))
			{
				((Component)Ralsei).transform.position = Vector3.MoveTowards(((Component)Ralsei).transform.position, new Vector3(0f, 26.65f, 0f), 6f * Time.deltaTime);
				Ralsei.Play("Walk");
				Ralsei.SetFloat("VelocityX", 0f);
				Ralsei.SetFloat("VelocityY", -1f);
				Ralsei.SetFloat("VelocityMagnitude", 1f);
			}
			else
			{
				Ralsei.Play("Idle");
				Ralsei.SetFloat("VelocityX", 0f);
				Ralsei.SetFloat("VelocityY", -1f);
				Ralsei.SetFloat("VelocityMagnitude", 0f);
			}
			if (((Component)Susie).transform.position != SusieWalkPositions[6])
			{
				((Component)Susie).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Susie).transform.position), Vector2.op_Implicit(SusieWalkPositions[6]), 6f * Time.deltaTime));
				Susie.AnimationOverriden = true;
				Susie.SusieAnimator.Play("Idle");
				Susie.SusieAnimator.SetFloat("VelocityX", 0f);
				Susie.SusieAnimator.SetFloat("VelocityY", 1f);
				Susie.SusieAnimator.SetFloat("VelocityMagnitude", 0f);
			}
			if (((Component)Kris).transform.position != KrisWalkPositions[4])
			{
				((Component)Kris).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Kris).transform.position), Vector2.op_Implicit(KrisWalkPositions[4]), 3f * Time.deltaTime));
				Kris._PMove.AnimationOverriden = true;
				Kris._PMove._anim.SetBool("MOVING", false);
				Kris._PMove._anim.SetFloat("MOVEMENTX", 0f);
				Kris._PMove._anim.SetFloat("MOVEMENTY", 1f);
				Kris._PMove.RotatePlayerAnim(new Vector2(0f, 1f));
			}
			if (((Component)Kris).transform.position == KrisWalkPositions[4] && ((Component)Susie).transform.position == SusieWalkPositions[6] && ((Component)Ralsei).transform.position == new Vector3(0f, 26.65f, 0f) && ((Component)PlayerCamera).transform.position == val5)
			{
				IncrementCutsceneIndex();
				((MonoBehaviour)this).StartCoroutine(RalseiWelcomeBackDelay());
				RalseiAnim_Wave();
			}
			break;
		}
		case 25:
			if ((Object)(object)LevelTransition != (Object)null)
			{
				LevelTransition.BeginTransition();
				LevelTransition = null;
			}
			if (((Component)Ralsei).transform.position != new Vector3(0f, 30f, 0f))
			{
				((Component)Ralsei).transform.position = Vector3.MoveTowards(((Component)Ralsei).transform.position, new Vector3(0f, 30f, 0f), 1f * Time.deltaTime);
				Ralsei.Play("Walk");
				Ralsei.SetFloat("VelocityX", 0f);
				Ralsei.SetFloat("VelocityY", 1f);
				Ralsei.SetFloat("VelocityMagnitude", 1f);
			}
			else
			{
				Ralsei.Play("Idle");
				Ralsei.SetFloat("VelocityX", 0f);
				Ralsei.SetFloat("VelocityY", 1f);
				Ralsei.SetFloat("VelocityMagnitude", 0f);
			}
			if (((Component)Susie).transform.position != SusieWalkPositions[7])
			{
				((Component)Susie).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Susie).transform.position), Vector2.op_Implicit(SusieWalkPositions[7]), 1f * Time.deltaTime));
				Susie.AnimationOverriden = true;
				Susie.SusieAnimator.Play("Walk");
				Susie.SusieAnimator.SetFloat("VelocityX", 0f);
				Susie.SusieAnimator.SetFloat("VelocityY", 1f);
				Susie.SusieAnimator.SetFloat("VelocityMagnitude", 1f);
			}
			if (((Component)Kris).transform.position != KrisWalkPositions[5])
			{
				((Component)Kris).transform.position = Vector2.op_Implicit(Vector2.MoveTowards(Vector2.op_Implicit(((Component)Kris).transform.position), Vector2.op_Implicit(KrisWalkPositions[5]), 1f * Time.deltaTime));
				Kris._PMove.AnimationOverriden = true;
				Kris._PMove._anim.SetBool("MOVING", false);
				Kris._PMove._anim.SetFloat("MOVEMENTX", 0f);
				Kris._PMove._anim.SetFloat("MOVEMENTY", 1f);
				Kris._PMove.RotatePlayerAnim(new Vector2(0f, 1f));
			}
			break;
		case 3:
		case 5:
		case 8:
		case 10:
		case 14:
		case 18:
		case 20:
		case 22:
		case 24:
			break;
		}
	}

	public void IncrementCutsceneIndex()
	{
		CutsceneIndex++;
	}

	private void RunFreshChat(CHATBOXTEXT text, int index, bool ForcePosition, bool OnBottom)
	{
		CutsceneChatter.FirstTextPlayed = false;
		CutsceneChatter.CurrentIndex = index;
		CutsceneChatter.FinishedText = false;
		CutsceneChatter.Text = text;
		if (ForcePosition)
		{
			CutsceneChatter.ManualTextboxPosition = true;
			CutsceneChatter.OnBottom = OnBottom;
		}
		CutsceneChatter.RUN();
	}

	private IEnumerator JJWalkDelay()
	{
		yield return (object)new WaitForSeconds(3f);
		IncrementCutsceneIndex();
		RunFreshChat(CutsceneChats[0], 1, ForcePosition: false, OnBottom: false);
	}

	private IEnumerator TasqueCutscene()
	{
		yield return (object)new WaitForSeconds(0.5f);
		CutsceneSource.PlayOneShot(CutsceneSounds[1]);
		Cafe.sprite = Cafe_Open;
		((Component)Tasque).gameObject.SetActive(true);
		IncrementCutsceneIndex();
		MusicManager.PauseMusic();
		Kris._PMove.RotatePlayerAnim(new Vector2(0f, 1f));
		Susie.RotateSusieToDirection(new Vector2(0f, 1f));
		yield return (object)new WaitForSeconds(1f);
		TasqueManager.SetActive(true);
		yield return (object)new WaitForSeconds(0.35f);
		RunFreshChat(CutsceneChats[2], 0, ForcePosition: true, OnBottom: true);
	}

	private IEnumerator LancerSusieHighFive()
	{
		MusicManager.StopSong(Fade: true, 0.5f);
		((Component)Susie).gameObject.SetActive(false);
		((Component)Susie).transform.position = SusieWalkPositions[5];
		Lancer.Play("Lancer_HighFive");
		yield return (object)new WaitForSeconds(1f / 3f);
		CutsceneSource.PlayOneShot(CutsceneSounds[2]);
		yield return (object)new WaitForSeconds(1.3333334f);
		CutsceneSource.PlayOneShot(CutsceneSounds[2]);
		yield return (object)new WaitForSeconds(7f / 12f);
		CutsceneSource.PlayOneShot(CutsceneSounds[4]);
		yield return (object)new WaitForSeconds(0.75f);
		CutsceneSource.PlayOneShot(CutsceneSounds[5]);
		yield return (object)new WaitForSeconds(2f);
		((Component)Susie).gameObject.SetActive(true);
		Susie.RotateSusieToDirection(new Vector2(0f, -1f));
		Lancer.Play("Lancer_Idle_Right");
		yield return (object)new WaitForSeconds(0.5f);
		Susie.RotateSusieToDirection(new Vector2(-1f, 0f));
		RunFreshChat(CutsceneChats[6], 0, ForcePosition: true, OnBottom: true);
		MusicManager.PlaySong(MusicLancer, FadePreviousSong: false, 1f);
	}

	private IEnumerator RalseiChatDelay()
	{
		MusicManager.StopSong(Fade: true, 0.5f);
		yield return (object)new WaitForSeconds(0.5f);
		RunFreshChat(CutsceneChats[7], 0, ForcePosition: true, OnBottom: true);
		LancerAnim_Idle_Up();
		Susie.RotateSusieToDirection(new Vector2(0f, 1f));
	}

	private IEnumerator RalseiWelcomeBackDelay()
	{
		MusicManager.PlaySong(MusicCastleTown, FadePreviousSong: false, 1f);
		yield return (object)new WaitForSeconds(0.5f);
		RunFreshChat(CutsceneChats[8], 0, ForcePosition: true, OnBottom: false);
	}

	public void LancerAnim_Idle_Down()
	{
		Lancer.Play("Lancer_Idle_Down");
	}

	public void LancerAnim_Idle_Right()
	{
		Lancer.Play("Lancer_Idle_Right");
	}

	public void LancerAnim_Idle_Up()
	{
		Lancer.Play("Lancer_Idle_Up");
	}

	public void LancerAnim_Concerned_Down()
	{
		Lancer.Play("Lancer_Concerned_Down");
	}

	public void LancerAnim_Concerned_Right()
	{
		Lancer.Play("Lancer_Concerned_Right");
	}

	public void RalseiAnim_Idle_Down()
	{
		Ralsei.Play("Idle");
		Ralsei.SetFloat("VelocityX", 0f);
		Ralsei.SetFloat("VelocityY", -1f);
		Ralsei.SetFloat("VelocityMagnitude", 0f);
	}

	public void RalseiAnim_Idle_Right()
	{
		Ralsei.Play("Idle");
		Ralsei.SetFloat("VelocityX", -1f);
		Ralsei.SetFloat("VelocityY", 0f);
		Ralsei.SetFloat("VelocityMagnitude", 0f);
	}

	public void RalseiAnim_Wave()
	{
		Ralsei.Play("Ralsei_Wave");
	}

	public void RalseiAnim_Laugh()
	{
		Ralsei.Play("Ralsei_Laugh");
	}

	public void RalseiAnim_Shock()
	{
		Ralsei.Play("Ralsei_Shock");
	}

	public void RalseiAnim_CrazyWalk()
	{
		Ralsei.Play("Ralsei_CrazyWalk");
	}

	public void RalseiAnim_Blush_Down()
	{
		Ralsei.Play("Ralsei_Blush_Down");
	}

	public void RalseiAnim_Sad_Down()
	{
		Ralsei.Play("Ralsei_Sad_Down");
	}

	public void RalseiAnim_Sad_Left()
	{
		Ralsei.Play("Ralsei_Sad_Left");
	}

	public void SusieAnim_Idle_Up()
	{
		Susie.SusieAnimator.Play("Idle");
		Susie.SusieAnimator.SetFloat("VelocityX", 0f);
		Susie.SusieAnimator.SetFloat("VelocityY", 1f);
		Susie.SusieAnimator.SetFloat("VelocityMagnitude", 0f);
	}

	public void SusieAnim_Scratch()
	{
		Susie.SusieAnimator.Play("SusieDarkworld_Scratch");
	}

	public void SusieAnim_Proud_Right()
	{
		Susie.SusieAnimator.Play("SusieDarkworld_Proud_Right");
	}
}
